/**
 * 防抖函数
 * @param func 函数
 * @param wait 等待时间
 * @returns {(function(): void)|*}
 */
function debounce(func, wait = 500) {
    let timerId;
    return function (...args) {
        clearTimeout(timerId);
        timerId = setTimeout(() => {
            func.apply(this, args);
        }, wait);
    }
}

function isArray(obj) {
    return Object.prototype.toString.call(obj) === '[object Array]';
}

/**
 * iziToast 配置项
 */
iziToast.settings({
    position: 'topRight',
    messageSize: '50px',
    timeout: 4000,
    transitionIn: 'bounceInLeft',
    transitionOut: 'fadeOutRight',
});

/**
 * 成功提示
 * @param title 标题
 * @param message 消息
 */
function successToast(message, title="成功") {
    iziToast.success({
        title: title,
        message: message,
    });
}

/**
 * 错误提示
 * @param title 标题
 * @param message 消息
 */
function errorToast(message, title="错误") {
    iziToast.error({
        title: title,
        message: message,
    });
}

/**
 * 提示
 * @param title 标题
 * @param message 消息
 */
function infoToast(message, title="提示") {
    iziToast.info({
        title: title,
        message: message,
    });
}

